package com.monolithiot.sso.dao.mapper;

import com.monolithiot.sso.common.entity.User;
import com.monolithiot.sso.common.entity.UserGroupRole;
import com.monolithiot.sso.dao.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 2018/12/30 Create by 郭文梁
 * UserGroupRoleMapper
 * 用户组角色关系映射
 *
 * @author 郭文梁
 * @date 2018/12/30
 */
@Repository
public interface UserGroupRoleMapper extends BaseMapper<UserGroupRole> {
    /**
     * 根据用户查询出其所在所有用户组中的角色，同时Fetch出用户组的信息
     *
     * @param user 用户对象
     * @return Role List
     */
    List<UserGroupRole> findByUserWithGroup(@Param("user") User user);

    /**
     * 查找用户创建的群组中的未通过的申请列表
     *
     * @param user 用户
     * @return UserGroupRule List
     */
    List<UserGroupRole> findNotPassByCreatorWithGroupAndUser(@Param("user") User user);
}
